<nz-card class="m-b-2">
  <div class="common-search-wrap">
    <div class="common-search-forms">
      <div class="common-form-item">
        <label class="common-search-label">所属品类</label>
        <div class="common-search-conrol">
          <nz-select nzPlaceHolder="全部" [(ngModel)]="seachParams.category">
            <nz-option nzLabel="手机" [nzValue]="1"></nz-option>
            <nz-option nzLabel="平板" [nzValue]="2"></nz-option>
          </nz-select>
        </div>
      </div>

      <div class="common-form-item">
        <label class="common-search-label">分类名称</label>
        <div class="common-search-conrol">
          <input nz-input placeholder="请输入分类名称" [(ngModel)]="seachParams.name" />
        </div>
      </div>

      <div class="common-form-item">
        <label class="common-search-label">状态</label>
        <div class="common-search-conrol">
          <nz-select nzPlaceHolder="全部" [(ngModel)]="seachParams.status">
            <nz-option nzLabel="启用" nzValue="1"></nz-option>
            <nz-option nzLabel="禁用" nzValue="0"></nz-option>
          </nz-select>
        </div>
      </div>

      <div class="common-form-item">
        <button nz-button nzType="primary" [nzLoading]="tableParams.tableLoading" class="m-r-8" (click)="seachData()">查询</button>
        <button nz-button nzType="default" (click)="resetData()">重置</button>
        <!-- <button nz-button nzType="link" (click)="isCollapse = !isCollapse">
          {{ isCollapse ? '收起' : '展开' }}<i nz-icon [nzType]="isCollapse ? 'up' : 'down'" nzTheme="outline"></i>
        </button> -->
      </div>
    </div>
  </div>
</nz-card>

<nz-card>
  <div class="opera-wrap p-b-10">
    <button nz-button nzType="primary" (click)="showModal(0)">
      <i nz-icon nzType="plus" nzTheme="outline"></i>新增分类
    </button>
  </div>

  <!-- Table -->
  <div class="pagination-wrap-position">
    <div class="table-wrap">
      <nz-table
        #basicTable
        nzSize="small"
        nzShowSizeChanger
        nzShowQuickJumper
        nzOuterBordered
        [nzFrontPagination]="false"
        [nzLoadingDelay]="100"
        [nzLoading]="tableParams.tableLoading"
        [nzData]="tableData"
        [nzPageSizeOptions]="[5, 10, 20, 50, 100]"
        [nzTotal]="tableParams.total"
        [nzPageIndex]="tableParams.page"
        [nzPageSize]="tableParams.pageSize"
        [nzShowTotal]="totalTemplate"
        (nzPageIndexChange)="onPageIndexChange($event)"
        (nzPageSizeChange)="onPageSizeChange($event)"
      >
        <thead>
          <tr>
            <th nzAlign="center" nzWidth="120px">ID</th>
            <th nzAlign="center">所属品类</th>
            <th nzAlign="center">分类名称</th>
            <th nzAlign="center">包含机型</th>
            <th nzAlign="center">状态</th>
            <th nzAlign="center">排序</th>
            <th nzAlign="center">更新时间</th>
            <th nzAlign="center">操作</th>
          </tr>
        </thead>

        <tbody>
          <tr *ngFor="let data of basicTable.data; let index = index;">
            <td nzAlign="center">{{ data.id }}</td>
            <!-- 所属品类 -->
            <td nzAlign="center">
              {{ data.category === 1 ? '手机' : (data.category === 2 ? '平板' : '-') }}
            </td>
            <td nzAlign="center">{{ data.name || '-' }}</td>
            <td nzAlign="center">
              <a
                nz-button
                nzType="link"
                target="_blank"
                [disabled]="!data.modelNum"
                [routerLink]="['/aisi-recyc/loveModelSelect']"
                [queryParams]="{ id: data.id }">
                {{ data.modelNum || '-' }}
              </a>
            </td>
            <td nzAlign="center">
              <span [ngStyle]="{'color': data.status == 0 ? '#F56C6C' : '#67C23A'}">
                {{ data.status == 0 ? '禁用' : data.status == 1 ? '启用' : '-' }}
              </span>
            </td>
            <td nzAlign="center">{{ data.sort }}</td>
            <td nzAlign="center">{{ data.updateTime || '-' }}</td>
            <!-- 操作 -->
            <td nzAlign="center">
              <button nz-button nzType="link" (click)="showModal(1, data)">编辑</button>
              <a
                nz-button
                nzType="link"
                nzDanger
                nz-popconfirm
                nzPopconfirmTitle="确认删除?"
                [nzIcon]="iconTpl"
                (nzOnConfirm)="deleteItem(data)">
                删除
              </a>
              <ng-template #iconTpl>
                <i nz-icon nzType="question-circle-o" style="color: red;"></i>
              </ng-template>
            </td>
          </tr>
        </tbody>
      </nz-table>

      <!-- 分页template -->
      <ng-template #totalTemplate let-total>共有 {{ tableParams.total }} 条</ng-template>
    </div>
  </div>
</nz-card>

<!-- 新增编辑 Modal START -->
<nz-modal
  nzClassName="custom-model-wrap"
  [nzFooter]="null"
  [(nzVisible)]="isVisible"
  [nzTitle]="modalType == 0 ? '新增分类' : '编辑分类'"
  (nzOnCancel)="handleCancel()">

  <div *nzModalContent>
    <div class="custom-model-body">
      <!-- body START -->
      <form nz-form class="modal-body" [formGroup]="validateForm">
        <nz-form-item>
          <nz-form-label nzSpan="6" nzRequired>所属品类</nz-form-label>
          <nz-form-control nzSpan="18" nzErrorTip="请选择所属品类!">
            <nz-select
              nzShowSearch
              nzAllowClear
              nzPlaceHolder="请选择所属品类"
              formControlName="category">
              <nz-option nzLabel="手机" [nzValue]="1"></nz-option>
              <nz-option nzLabel="平板" [nzValue]="2"></nz-option>
            </nz-select>
          </nz-form-control>
        </nz-form-item>

        <nz-form-item>
          <nz-form-label nzSpan="6" nzRequired>分类名称</nz-form-label>
          <nz-form-control nzSpan="18" nzErrorTip="请输入分类名称!">
            <input formControlName="name" nz-input placeholder="请输入分类名称" />
          </nz-form-control>
        </nz-form-item>

        <nz-form-item>
          <nz-form-label nzSpan="6" nzRequired>排序</nz-form-label>
          <nz-form-control nzSpan="18" nzErrorTip="请输入排序!">
            <nz-input-number style="width: 56%;" [nzMin]="0" [nzPrecision]="0" [nzStep]="1" nzPlaceHolder="请输入" formControlName="sort"></nz-input-number>
          </nz-form-control>
        </nz-form-item>

        <nz-form-item>
          <nz-form-label nzSpan="6" nzRequired>状态</nz-form-label>
          <nz-form-control nzSpan="18" nzErrorTip="请选择状态!">
            <nz-radio-group formControlName="status">
              <label nz-radio [nzValue]="1">启用</label>
              <label nz-radio [nzValue]="0">禁用</label>
            </nz-radio-group>
          </nz-form-control>
        </nz-form-item>
      </form>
      <!-- body END -->
    </div>

    <div class="custom-model-foot">
      <div class="custom-foot-cont">
        <button nz-button nzType="primary" [nzLoading]="subModalLoding" (click)="submitForm()">确定</button>
        <button nz-button nzType="default" (click)="handleCancel()">取消</button>
      </div>
    </div>
  </div>
</nz-modal>
<!-- 新增编辑 Modal END -->